﻿using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Collections.Generic;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using GC2.Bussines;
using GC2.Bussines.BMAdmin;
using GC2.Entities.Admin;
using GC2.Entities.Comunes;
using GC2.Entities.Seguridad;
using GC2.ExceptionHandler;

public partial class Parametros_PFCompras : GenericPage
{
    #region Propiedades 
    GC2.Funciones.General.FunctionsSite f = new GC2.Funciones.General.FunctionsSite();
    #endregion

    #region Controles

    #region Page_Load
    protected void Page_Load(object sender, EventArgs e)
    {
        try
        {
            SetearCultura();
            SetearConexion();
            if (!IsPostBack)
            {
                lblAccion.Text = "Actualiza Periodo Fiscal";
                CargarCombo();
                MuestraDatos();
                lblAnio.Visible = false;
            }
        }
        catch (Exception ex) { ErrorUI(ex); }
    }
    #endregion

    #region btnGuardar_Click
    protected void btnGuardar_Click(object sender, EventArgs e)
    {
        try
        {
            lblAnio.Visible = false;
            bool bOk = f.isNumeric(txtAnio.Text);
            if (bOk)
            {
                int iAnio = 0;
                iAnio = int.Parse(txtAnio.Text.Trim());
                if (iAnio > 2000 && iAnio < 2050)
                {
                    Guardar();
                    lblAccion.Text = "Período Actualizado.";
                }
                else
                {
                    lblAnio.Visible = true;
                    lblAccion.Text = "El Año Período es Incorrecto.";
                    return;
                }  
            }
            else
            {
                lblAnio.Visible = true;
                lblAccion.Text = "El Año Período es Incorrecto.";
            }
        }
        catch (Exception ex) { ErrorUI(ex); }
    }
    #endregion

    #region btnCancelar_Click
    protected void btnCancelar_Click(object sender, EventArgs e)
    {
        Response.Redirect("~/Seguridad/Default.aspx", false);
    }
    #endregion

    #endregion

    #region Metodos

    #region CargarCombo
    protected void CargarCombo()
    {
        try
        {
            List<Meses> listaMeses = ListaMeses();
            foreach (Meses mes in listaMeses)
            {
                ListItem liItem = new ListItem();
                liItem.Value = mes.Mes.ToString();
                liItem.Text = mes.Nombre;
                cboMes.Items.Add(liItem);
            }
        }
        catch (Exception ex) { ErrorUI(ex); }
    }
    #endregion

    #region MuestraDatos
    protected void MuestraDatos()
    {
        try
        {
            BMPFCompras bmPFCompras = new BMPFCompras(Connection);
            PFCompras pfCompras = bmPFCompras.BMPFComprasGet();
            cboMes.SelectedValue = pfCompras.PFMes.ToString();
            txtAnio.Text = pfCompras.PFAnio.ToString();
        }
        catch (Exception ex) { ErrorUI(ex); }
    }
    #endregion

    #region Guardar
    protected void Guardar()
    {
        try
        {
            BMPFCompras bmPFCompras = new BMPFCompras(Connection);
            PFCompras pfCompras = new PFCompras();
            pfCompras.Id = 1;
            pfCompras.PFMes = int.Parse(cboMes.SelectedValue);
            pfCompras.PFAnio = int.Parse(txtAnio.Text.Trim());
            bmPFCompras.BMPFComprasUpdate(pfCompras);
            lblAccion.Text = "Período Actualizado";
        }
        catch (Exception ex) { ErrorUI(ex); }
    }
    #endregion

    #endregion
}
